home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS in a Box 7
/
BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso
/
Files
/
Hyper
/
Me-Mz
/
ModiFone.cpt
/
ModiFone
/
stack.txt
< prev
Wrap
Text File
|
1987-10-05
|
6KB
|
177 lines
-- stack: in
-- format: 8 (HyperCard 1)
-- flags: 0x4000 (can't delete)
-- protect password hash: 0
-- maximum user level: 5 (scripting)
-- window: Rect(x1=0, y1=0, x2=0, y2=0)
-- screen: Rect(x1=0, y1=0, x2=0, y2=0)
-- card dimensions: w=0 h=0
-- scroll: x=0 y=0
-- background count: 1
-- first background id: 2792
-- card count: 1
-- first card id: 3477
-- list block id: 2056
-- print block id: 0
-- font table block id: 0
-- style table block id: 0
-- free block count: 0
-- free size: 0 bytes
-- total size: 14656 bytes
-- stack block size: 5120 bytes
-- created by hypercard version: 0x00000000
-- compacted by hypercard version: 0x00000000
-- modified by hypercard version: 0x00000000
-- opened by hypercard version: 0x00000000
-- patterns[0]: 0x0000000000000000
-- patterns[1]: 0x0000220000002200
-- patterns[2]: 0x8800220088002200
-- patterns[3]: 0xCC003300CC003300
-- patterns[4]: 0xCC883322CC883322
-- patterns[5]: 0xEE88BB22EE88BB22
-- patterns[6]: 0xEECCBB33EECCBB33
-- patterns[7]: 0xFFCCFF33FFCCFF33
-- patterns[8]: 0xFFEEFFBBFFEEFFBB
-- patterns[9]: 0xFFFFFFBBFFFFFFBB
-- patterns[10]: 0x8010022001084004
-- patterns[11]: 0xFFFFFFFFFFFFFFFF
-- patterns[12]: 0x8822882288228822
-- patterns[13]: 0x1122448811224488
-- patterns[14]: 0xC4800C6843023026
-- patterns[15]: 0xB130031BD8C00C8D
-- patterns[16]: 0xAA00AA00AA00AA00
-- patterns[17]: 0x8822552288225522
-- patterns[18]: 0x8855225588552255
-- patterns[19]: 0x77DD77DD77DD77DD
-- patterns[20]: 0x8000000000000000
-- patterns[21]: 0xAA55AA55AA55AA55
-- patterns[22]: 0x038448300C020101
-- patterns[23]: 0x8244394482010101
-- patterns[24]: 0x8814224188412214
-- patterns[25]: 0x8080413E080814E3
-- patterns[26]: 0x22048C7422179810
-- patterns[27]: 0xBE808808EB088880
-- patterns[28]: 0x25C8328964244C92
-- patterns[29]: 0xA29C41BE2AC914EB
-- patterns[30]: 0x40A00000040A0000
-- patterns[31]: 0x8040200002040800
-- patterns[32]: 0xAA00800088008000
-- patterns[33]: 0xFF80808080808080
-- patterns[34]: 0x081C22C180010204
-- patterns[35]: 0xFF808080FF080808
-- patterns[36]: 0xF87422478F172271
-- patterns[37]: 0xBF00BFBFB0B0B0B0
-- patterns[38]: 0xFF7FBE5DA2418000
-- patterns[39]: 0xFAF5FAF5A050A050
-- checksum: 0x0
----- HyperTalk script -----
-- two dashes denote comments, ignored by HyperTalk
-- ModiFone Script
on idle
if the short time ≠ field "loc time" then
put the short time into field "loc time"
end if
pass idle
end idle
on openStack
global dialNumber, dialArea, HoldAreaCode
-- dialNumber is the thing the modem calls
-- dialArea is the area code added to dialNumber
-- HoldAreaCode is a global variable which carries the area code
-- from the Area Code Stack over to here.
-- I could have just used DialArea but the script uses it for some
-- other functions.
put empty into field "long dist preamble"
put empty into msg
show message box
put HoldAreaCode into field "long dist preamble"
-- this field is Dial For Long Distance
end openStack
on Open Stack...
put empty into HoldAreaCode
doMenu
end Open Stack... -- this flushes the area code if you Open another
-- stack from ModiFone. You can delete this if you
-- want to retain the last area code.
on dial string
global dialNumber, dialArea
put string into dialNumber -- gets the number from the dialog box
if string is empty then exit dial -- can't dial nothing
-- (Comment from Apple stack):
-- we do not handle international phone numbers correctly
if dialNumber is empty then exit dial -- can't dial nobody
if dialArea contains field "area code"
then put field "preamble" before dialNumber
else put field "long dist preamble" before dialNumber
-- the script won't let you put your own area code in front of a
-- local number, so it substitutes the thing you need to dial a local
-- outside line
put "Now dialing: " & dialNumber -- puts words into msg box
if hilite of button "modem (tone dialing)" is true
then send "dial " & quote & dialNumber & quote & " with modem " & quote & "ATS0=0DT" & quote to HyperCard
-- tone dialing routine which I don't quite understand
if hilite of button "modem (pulse dialing)" is true
then send "dial " & quote & dialNumber & quote & " with modem " & quote & "ATS0=0DP" & quote to HyperCard
-- ditto
if hilite of button "speaker (tone dialing)" is true
then send "dial " & quote & dialNumber & quote to HyperCard
-- ditto
put empty -- flushes number. Delete to retain for redialing
put empty into HoldAreaCode -- empties a/c
end dial
-- all the following is fancy string cleaning stuff that I did not touch
on findAreaCode
global dialArea,dialNumber
stripNonDigits
if first char of dialNumber is "9" and "-, " contains char 2 of dialNumber then
put empty into char 1 of dialNumber -- remove "9"
stripNonDigits
end if
get char 2 of dialNumber
if it is 0 or it is 1 then
put " " after char 3 of dialNumber
put first word of dialNumber into dialArea
put empty into first word of dialNumber
stripNonDigits
else put field "area code" into dialArea
stripTrailer
end findAreaCode
on stripNonDigits
global dialNumber
repeat for the length of dialNumber
get first char of dialNumber
if it is in "0123456789" then exit stripNonDigits
put empty into first char of dialNumber
end repeat
end stripNonDigits
on stripTrailer
global dialNumber
repeat for the length of dialNumber
get last char of dialNumber
if it is in "0123456789" then exit stripTrailer
put empty into last char of dialNumber
end repeat
end stripTrailer